# Work
# vi: ft=sshconfig

Host gilab.com
    Protocol 2
    User gitlabuser
    Identityfile ~/.ssh/gitlab.com_gitlabuser_cipher

Host github.com
    Protocol 2
    User githubuser
    Identityfile ~/.ssh/github.com_githubuser_cipher

Host *.company.work
    Protocol 2 
    User companyuser
    Identityfile ~/.ssh/company.work_companyuser_ed25519
    Identityfile ~/.ssh/company.work_companyuser_rsa4096
    IdentitiesOnly yes
    ControlPath ~/.ssh/company.work-%r@%h:%p
    ControlMaster auto
    ControlPersist 10m
    Compression yes
    ConnectTimeout 60
    HashKnownHosts yes  

Host *.domain.private
    Protocol 2 
    User privateuser
    Identityfile ~/.ssh/domain.private_privateuser_ed25519
    Identityfile ~/.ssh/domain.private_privateuser_rsa4096
    IdentitiesOnly yes
    ControlPath ~/.ssh/domain.private-%r@%h:%p
    ControlMaster auto
    ControlPersist 2h
    Compression yes
    ConnectTimeout 600
    HashKnownHosts yes  

Host jumphost.company.work
    Hostname www.xxx.yyy.zzz
    ForwardAgent yes

Host server01.company.work
    Hostname www.xxx.yyy.zzz
    ProxyJump jumphost.company.work

Host oldserver02.company.work
    Hostname www.xxx.yyy.zzz
    ProxyCommand ssh jumphost.company.work -w %h:%p

Host veryoldserver03.company.work
    Hostname www.xxx.yyy.zzz
    ProxyCommand ssh jumphost.company.work exec nc -q0 %h %p 2> /dev/null

Host server.domain.private
    Hostname server.domain.private
